<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

<script>
// 1.计算传入任意多个数字的和，并输出
function sum(){
    // 使用arguments接收所有实参
    // console.log( arguments );
    var num = 0;// 用于累加数值
    for (var i = 0; i < arguments.length; i++){
        num += arguments[i]
    }
    console.log( num );
    return num;
}
// sum(1,2);
// sum(1,2,3);
// sum(1,2,3,4);


// 2.编写一个函数（传入3参数），计算两个数字的和或差或积或商，并输出
function compute(num1,num2,flag){
    // 根据flag标记决定要干什么
    switch(flag){
        case '+':
            console.log( num1 + num2 );
            break;
        case '-':
            console.log( num1 - num2 );
            break;
        case '*':
            console.log( num1 * num2 );
            break;
        case '/':
            console.log( num1 / num2 );
            break;
    }
}
// compute(10,2,'+');
// compute(10,2,'*');


// 3.编写一个函数，传入三个数字，比较它们的大小，按从小到大的顺序输出
function sort(a,b,c){
    if (a>b) {
        if (a>c) {
            // a最大
            if (b>c) {
                // c最小
                console.log( c,b,a );
            } else{
                // b最小
                console.log( b,c,a );
            }
        }else{
            // c最大，b最小
            console.log( b,a,c );
        }
    }else{
        if (a<c) {
            // a最小
            if (b>c) {
                // b最大
                console.log( a,c,b );
            }else{
                // c最大
                console.log( a,b,c );
            }
        }else{
            // c最小，b最大
            console.log( c,a,b );
        }
    }
}
// sort(14,7,21);// 7 14 21
// sort(32,14,9);// 9 14 32


// 4.编写一个函数，输入n为偶数时，调用函数求1/2+1/4+...+1/n,当输入n为奇数时，调用函数求1/1+1/3+...+1/n
function fun(n){
    var sum = 0;
    // 判断奇数偶数
    if (n%2 == 0) {
        // 偶数
        for (var i = 2; i <= n; i+=2){
            sum += 1/i;
        }
    } else {
        // 奇数
        for (var i = 1; i <= n; i+=2){
            sum += 1/i;
        }
    }
    console.log( sum );
    return sum;
}
// fun(8);
// fun(9);


// 5.某个公司采用公用电话传递数据，数据是四位的整数(如：2055)，在传递过程中是加密的，加密规则如下：每一位数字都加上5，每一位数字都对10取余，用余数代替该位数字，再将第一位和第四位交换，第二位和第三位交换，请编写一个函数，传入原文(如：2055)，输出密文(如：0057)。
function Encrypt(num){
    var q = parseInt(num/1000);// 千位
    var b = parseInt((num%1000)/100);// 百位
    var s = parseInt((num%100)/10);// 十位
    var g = num%10;// 个位
    q = (q+5)%10;
    b = (b+5)%10;
    s = (s+5)%10;
    g = (g+5)%10;
    console.log( '' + g + s + b + q );
}
Encrypt(2055);// '0057'
Encrypt(1234);// '9876'

</script>
</body>
</html>